/*
 * MIT License
 *
 * Copyright (c) 2023 OrdinaryRoad
 *
 * Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to deal
 * in the Software without restriction, including without limitation the rights
 * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in all
 * copies or substantial portions of the Software.
 *
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
 * SOFTWARE.
 */

// Generated by the protocol buffer compiler.  DO NOT EDIT!
// source: douyin.proto

// Protobuf Java Version: 3.25.3
package tech.ordinaryroad.live.chat.client.codec.douyin.protobuf;

public interface ResponseOrBuilder extends
    // @@protoc_insertion_point(interface_extends:Response)
    com.google.protobuf.MessageOrBuilder {

  /**
   * <code>repeated .Message messagesList = 1;</code>
   */
  java.util.List<tech.ordinaryroad.live.chat.client.codec.douyin.protobuf.Message> 
      getMessagesListList();
  /**
   * <code>repeated .Message messagesList = 1;</code>
   */
  tech.ordinaryroad.live.chat.client.codec.douyin.protobuf.Message getMessagesList(int index);
  /**
   * <code>repeated .Message messagesList = 1;</code>
   */
  int getMessagesListCount();
  /**
   * <code>repeated .Message messagesList = 1;</code>
   */
  java.util.List<? extends tech.ordinaryroad.live.chat.client.codec.douyin.protobuf.MessageOrBuilder> 
      getMessagesListOrBuilderList();
  /**
   * <code>repeated .Message messagesList = 1;</code>
   */
  tech.ordinaryroad.live.chat.client.codec.douyin.protobuf.MessageOrBuilder getMessagesListOrBuilder(
      int index);

  /**
   * <code>string cursor = 2;</code>
   * @return The cursor.
   */
  java.lang.String getCursor();
  /**
   * <code>string cursor = 2;</code>
   * @return The bytes for cursor.
   */
  com.google.protobuf.ByteString
      getCursorBytes();

  /**
   * <code>uint64 fetchInterval = 3;</code>
   * @return The fetchInterval.
   */
  long getFetchInterval();

  /**
   * <code>uint64 now = 4;</code>
   * @return The now.
   */
  long getNow();

  /**
   * <code>string internalExt = 5;</code>
   * @return The internalExt.
   */
  java.lang.String getInternalExt();
  /**
   * <code>string internalExt = 5;</code>
   * @return The bytes for internalExt.
   */
  com.google.protobuf.ByteString
      getInternalExtBytes();

  /**
   * <code>uint32 fetchType = 6;</code>
   * @return The fetchType.
   */
  int getFetchType();

  /**
   * <code>map&lt;string, string&gt; routeParams = 7;</code>
   */
  int getRouteParamsCount();
  /**
   * <code>map&lt;string, string&gt; routeParams = 7;</code>
   */
  boolean containsRouteParams(
      java.lang.String key);
  /**
   * Use {@link #getRouteParamsMap()} instead.
   */
  @java.lang.Deprecated
  java.util.Map<java.lang.String, java.lang.String>
  getRouteParams();
  /**
   * <code>map&lt;string, string&gt; routeParams = 7;</code>
   */
  java.util.Map<java.lang.String, java.lang.String>
  getRouteParamsMap();
  /**
   * <code>map&lt;string, string&gt; routeParams = 7;</code>
   */
  /* nullable */
java.lang.String getRouteParamsOrDefault(
      java.lang.String key,
      /* nullable */
java.lang.String defaultValue);
  /**
   * <code>map&lt;string, string&gt; routeParams = 7;</code>
   */
  java.lang.String getRouteParamsOrThrow(
      java.lang.String key);

  /**
   * <code>uint64 heartbeatDuration = 8;</code>
   * @return The heartbeatDuration.
   */
  long getHeartbeatDuration();

  /**
   * <code>bool needAck = 9;</code>
   * @return The needAck.
   */
  boolean getNeedAck();

  /**
   * <code>string pushServer = 10;</code>
   * @return The pushServer.
   */
  java.lang.String getPushServer();
  /**
   * <code>string pushServer = 10;</code>
   * @return The bytes for pushServer.
   */
  com.google.protobuf.ByteString
      getPushServerBytes();

  /**
   * <code>string liveCursor = 11;</code>
   * @return The liveCursor.
   */
  java.lang.String getLiveCursor();
  /**
   * <code>string liveCursor = 11;</code>
   * @return The bytes for liveCursor.
   */
  com.google.protobuf.ByteString
      getLiveCursorBytes();

  /**
   * <code>bool historyNoMore = 12;</code>
   * @return The historyNoMore.
   */
  boolean getHistoryNoMore();
}
